/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package BoardGameLanguage;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EOperation;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each operation of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see BoardGameLanguage.BoardGameLanguageFactory
 * @model kind="package"
 * @generated
 */
public interface BoardGameLanguagePackage extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "BoardGameLanguage";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "http://www.moflon.org/BoardGameLanguage";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "BoardGameLanguage";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	BoardGameLanguagePackage eINSTANCE = BoardGameLanguage.impl.BoardGameLanguagePackageImpl
			.init();

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.BoardImpl <em>Board</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.BoardImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getBoard()
	 * @generated
	 */
	int BOARD = 0;

	/**
	 * The feature id for the '<em><b>Figures</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD__FIGURES = 0;

	/**
	 * The feature id for the '<em><b>Fields</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD__FIELDS = 1;

	/**
	 * The feature id for the '<em><b>Selected Figure</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD__SELECTED_FIGURE = 2;

	/**
	 * The feature id for the '<em><b>Width</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD__WIDTH = 3;

	/**
	 * The feature id for the '<em><b>Height</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD__HEIGHT = 4;

	/**
	 * The number of structural features of the '<em>Board</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD_FEATURE_COUNT = 5;

	/**
	 * The operation id for the '<em>Initialize</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD___INITIALIZE__BOARDGAMEUTILS = 0;

	/**
	 * The operation id for the '<em>Handle Field Pressed</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD___HANDLE_FIELD_PRESSED__FIELD = 1;

	/**
	 * The number of operations of the '<em>Board</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BOARD_OPERATION_COUNT = 2;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.FigureImpl <em>Figure</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.FigureImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getFigure()
	 * @generated
	 */
	int FIGURE = 1;

	/**
	 * The feature id for the '<em><b>Field</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIGURE__FIELD = 0;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIGURE__BOARD = 1;

	/**
	 * The number of structural features of the '<em>Figure</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIGURE_FEATURE_COUNT = 2;

	/**
	 * The operation id for the '<em>Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIGURE___MOVE__FIELD = 0;

	/**
	 * The operation id for the '<em>Perform Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIGURE___PERFORM_MOVE__FIELD = 1;

	/**
	 * The number of operations of the '<em>Figure</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIGURE_OPERATION_COUNT = 2;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.FieldImpl <em>Field</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.FieldImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getField()
	 * @generated
	 */
	int FIELD = 2;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__BOARD = 0;

	/**
	 * The feature id for the '<em><b>Figure</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__FIGURE = 1;

	/**
	 * The feature id for the '<em><b>Right</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__RIGHT = 2;

	/**
	 * The feature id for the '<em><b>Left</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__LEFT = 3;

	/**
	 * The feature id for the '<em><b>Above</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__ABOVE = 4;

	/**
	 * The feature id for the '<em><b>Below</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__BELOW = 5;

	/**
	 * The feature id for the '<em><b>Row</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__ROW = 6;

	/**
	 * The feature id for the '<em><b>Column</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD__COLUMN = 7;

	/**
	 * The number of structural features of the '<em>Field</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD_FEATURE_COUNT = 8;

	/**
	 * The number of operations of the '<em>Field</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FIELD_OPERATION_COUNT = 0;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.KingImpl <em>King</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.KingImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getKing()
	 * @generated
	 */
	int KING = 3;

	/**
	 * The feature id for the '<em><b>Field</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING__FIELD = FIGURE__FIELD;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING__BOARD = FIGURE__BOARD;

	/**
	 * The number of structural features of the '<em>King</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_FEATURE_COUNT = FIGURE_FEATURE_COUNT + 0;

	/**
	 * The operation id for the '<em>Perform Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING___PERFORM_MOVE__FIELD = FIGURE___PERFORM_MOVE__FIELD;

	/**
	 * The operation id for the '<em>Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING___MOVE__FIELD = FIGURE_OPERATION_COUNT + 0;

	/**
	 * The number of operations of the '<em>King</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_OPERATION_COUNT = FIGURE_OPERATION_COUNT + 1;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.RookImpl <em>Rook</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.RookImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getRook()
	 * @generated
	 */
	int ROOK = 4;

	/**
	 * The feature id for the '<em><b>Field</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK__FIELD = FIGURE__FIELD;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK__BOARD = FIGURE__BOARD;

	/**
	 * The number of structural features of the '<em>Rook</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_FEATURE_COUNT = FIGURE_FEATURE_COUNT + 0;

	/**
	 * The operation id for the '<em>Perform Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK___PERFORM_MOVE__FIELD = FIGURE___PERFORM_MOVE__FIELD;

	/**
	 * The operation id for the '<em>Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK___MOVE__FIELD = FIGURE_OPERATION_COUNT + 0;

	/**
	 * The number of operations of the '<em>Rook</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_OPERATION_COUNT = FIGURE_OPERATION_COUNT + 1;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.KingWhiteImpl <em>King White</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.KingWhiteImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getKingWhite()
	 * @generated
	 */
	int KING_WHITE = 5;

	/**
	 * The feature id for the '<em><b>Field</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_WHITE__FIELD = KING__FIELD;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_WHITE__BOARD = KING__BOARD;

	/**
	 * The number of structural features of the '<em>King White</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_WHITE_FEATURE_COUNT = KING_FEATURE_COUNT + 0;

	/**
	 * The operation id for the '<em>Perform Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_WHITE___PERFORM_MOVE__FIELD = KING___PERFORM_MOVE__FIELD;

	/**
	 * The operation id for the '<em>Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_WHITE___MOVE__FIELD = KING___MOVE__FIELD;

	/**
	 * The number of operations of the '<em>King White</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_WHITE_OPERATION_COUNT = KING_OPERATION_COUNT + 0;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.KingBlackImpl <em>King Black</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.KingBlackImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getKingBlack()
	 * @generated
	 */
	int KING_BLACK = 6;

	/**
	 * The feature id for the '<em><b>Field</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_BLACK__FIELD = KING__FIELD;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_BLACK__BOARD = KING__BOARD;

	/**
	 * The number of structural features of the '<em>King Black</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_BLACK_FEATURE_COUNT = KING_FEATURE_COUNT + 0;

	/**
	 * The operation id for the '<em>Perform Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_BLACK___PERFORM_MOVE__FIELD = KING___PERFORM_MOVE__FIELD;

	/**
	 * The operation id for the '<em>Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_BLACK___MOVE__FIELD = KING___MOVE__FIELD;

	/**
	 * The number of operations of the '<em>King Black</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int KING_BLACK_OPERATION_COUNT = KING_OPERATION_COUNT + 0;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.RookWhiteImpl <em>Rook White</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.RookWhiteImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getRookWhite()
	 * @generated
	 */
	int ROOK_WHITE = 7;

	/**
	 * The feature id for the '<em><b>Field</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_WHITE__FIELD = ROOK__FIELD;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_WHITE__BOARD = ROOK__BOARD;

	/**
	 * The number of structural features of the '<em>Rook White</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_WHITE_FEATURE_COUNT = ROOK_FEATURE_COUNT + 0;

	/**
	 * The operation id for the '<em>Perform Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_WHITE___PERFORM_MOVE__FIELD = ROOK___PERFORM_MOVE__FIELD;

	/**
	 * The operation id for the '<em>Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_WHITE___MOVE__FIELD = ROOK___MOVE__FIELD;

	/**
	 * The number of operations of the '<em>Rook White</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_WHITE_OPERATION_COUNT = ROOK_OPERATION_COUNT + 0;

	/**
	 * The meta object id for the '{@link BoardGameLanguage.impl.RookBlackImpl <em>Rook Black</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see BoardGameLanguage.impl.RookBlackImpl
	 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getRookBlack()
	 * @generated
	 */
	int ROOK_BLACK = 8;

	/**
	 * The feature id for the '<em><b>Field</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_BLACK__FIELD = ROOK__FIELD;

	/**
	 * The feature id for the '<em><b>Board</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_BLACK__BOARD = ROOK__BOARD;

	/**
	 * The number of structural features of the '<em>Rook Black</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_BLACK_FEATURE_COUNT = ROOK_FEATURE_COUNT + 0;

	/**
	 * The operation id for the '<em>Perform Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_BLACK___PERFORM_MOVE__FIELD = ROOK___PERFORM_MOVE__FIELD;

	/**
	 * The operation id for the '<em>Move</em>' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_BLACK___MOVE__FIELD = ROOK___MOVE__FIELD;

	/**
	 * The number of operations of the '<em>Rook Black</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOK_BLACK_OPERATION_COUNT = ROOK_OPERATION_COUNT + 0;

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.Board <em>Board</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Board</em>'.
	 * @see BoardGameLanguage.Board
	 * @generated
	 */
	EClass getBoard();

	/**
	 * Returns the meta object for the containment reference list '{@link BoardGameLanguage.Board#getFigures <em>Figures</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Figures</em>'.
	 * @see BoardGameLanguage.Board#getFigures()
	 * @see #getBoard()
	 * @generated
	 */
	EReference getBoard_Figures();

	/**
	 * Returns the meta object for the containment reference list '{@link BoardGameLanguage.Board#getFields <em>Fields</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Fields</em>'.
	 * @see BoardGameLanguage.Board#getFields()
	 * @see #getBoard()
	 * @generated
	 */
	EReference getBoard_Fields();

	/**
	 * Returns the meta object for the reference '{@link BoardGameLanguage.Board#getSelectedFigure <em>Selected Figure</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Selected Figure</em>'.
	 * @see BoardGameLanguage.Board#getSelectedFigure()
	 * @see #getBoard()
	 * @generated
	 */
	EReference getBoard_SelectedFigure();

	/**
	 * Returns the meta object for the attribute '{@link BoardGameLanguage.Board#getWidth <em>Width</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Width</em>'.
	 * @see BoardGameLanguage.Board#getWidth()
	 * @see #getBoard()
	 * @generated
	 */
	EAttribute getBoard_Width();

	/**
	 * Returns the meta object for the attribute '{@link BoardGameLanguage.Board#getHeight <em>Height</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Height</em>'.
	 * @see BoardGameLanguage.Board#getHeight()
	 * @see #getBoard()
	 * @generated
	 */
	EAttribute getBoard_Height();

	/**
	 * Returns the meta object for the '{@link BoardGameLanguage.Board#initialize(BoardGameLanguage.facade.BoardGameUtils) <em>Initialize</em>}' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the '<em>Initialize</em>' operation.
	 * @see BoardGameLanguage.Board#initialize(BoardGameLanguage.facade.BoardGameUtils)
	 * @generated
	 */
	EOperation getBoard__Initialize__BoardGameUtils();

	/**
	 * Returns the meta object for the '{@link BoardGameLanguage.Board#handleFieldPressed(BoardGameLanguage.Field) <em>Handle Field Pressed</em>}' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the '<em>Handle Field Pressed</em>' operation.
	 * @see BoardGameLanguage.Board#handleFieldPressed(BoardGameLanguage.Field)
	 * @generated
	 */
	EOperation getBoard__HandleFieldPressed__Field();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.Figure <em>Figure</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Figure</em>'.
	 * @see BoardGameLanguage.Figure
	 * @generated
	 */
	EClass getFigure();

	/**
	 * Returns the meta object for the reference '{@link BoardGameLanguage.Figure#getField <em>Field</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Field</em>'.
	 * @see BoardGameLanguage.Figure#getField()
	 * @see #getFigure()
	 * @generated
	 */
	EReference getFigure_Field();

	/**
	 * Returns the meta object for the container reference '{@link BoardGameLanguage.Figure#getBoard <em>Board</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the container reference '<em>Board</em>'.
	 * @see BoardGameLanguage.Figure#getBoard()
	 * @see #getFigure()
	 * @generated
	 */
	EReference getFigure_Board();

	/**
	 * Returns the meta object for the '{@link BoardGameLanguage.Figure#move(BoardGameLanguage.Field) <em>Move</em>}' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the '<em>Move</em>' operation.
	 * @see BoardGameLanguage.Figure#move(BoardGameLanguage.Field)
	 * @generated
	 */
	EOperation getFigure__Move__Field();

	/**
	 * Returns the meta object for the '{@link BoardGameLanguage.Figure#performMove(BoardGameLanguage.Field) <em>Perform Move</em>}' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the '<em>Perform Move</em>' operation.
	 * @see BoardGameLanguage.Figure#performMove(BoardGameLanguage.Field)
	 * @generated
	 */
	EOperation getFigure__PerformMove__Field();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.Field <em>Field</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Field</em>'.
	 * @see BoardGameLanguage.Field
	 * @generated
	 */
	EClass getField();

	/**
	 * Returns the meta object for the container reference '{@link BoardGameLanguage.Field#getBoard <em>Board</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the container reference '<em>Board</em>'.
	 * @see BoardGameLanguage.Field#getBoard()
	 * @see #getField()
	 * @generated
	 */
	EReference getField_Board();

	/**
	 * Returns the meta object for the reference '{@link BoardGameLanguage.Field#getFigure <em>Figure</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Figure</em>'.
	 * @see BoardGameLanguage.Field#getFigure()
	 * @see #getField()
	 * @generated
	 */
	EReference getField_Figure();

	/**
	 * Returns the meta object for the reference '{@link BoardGameLanguage.Field#getRight <em>Right</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Right</em>'.
	 * @see BoardGameLanguage.Field#getRight()
	 * @see #getField()
	 * @generated
	 */
	EReference getField_Right();

	/**
	 * Returns the meta object for the reference '{@link BoardGameLanguage.Field#getLeft <em>Left</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Left</em>'.
	 * @see BoardGameLanguage.Field#getLeft()
	 * @see #getField()
	 * @generated
	 */
	EReference getField_Left();

	/**
	 * Returns the meta object for the reference '{@link BoardGameLanguage.Field#getAbove <em>Above</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Above</em>'.
	 * @see BoardGameLanguage.Field#getAbove()
	 * @see #getField()
	 * @generated
	 */
	EReference getField_Above();

	/**
	 * Returns the meta object for the reference '{@link BoardGameLanguage.Field#getBelow <em>Below</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Below</em>'.
	 * @see BoardGameLanguage.Field#getBelow()
	 * @see #getField()
	 * @generated
	 */
	EReference getField_Below();

	/**
	 * Returns the meta object for the attribute '{@link BoardGameLanguage.Field#getRow <em>Row</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Row</em>'.
	 * @see BoardGameLanguage.Field#getRow()
	 * @see #getField()
	 * @generated
	 */
	EAttribute getField_Row();

	/**
	 * Returns the meta object for the attribute '{@link BoardGameLanguage.Field#getColumn <em>Column</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Column</em>'.
	 * @see BoardGameLanguage.Field#getColumn()
	 * @see #getField()
	 * @generated
	 */
	EAttribute getField_Column();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.King <em>King</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>King</em>'.
	 * @see BoardGameLanguage.King
	 * @generated
	 */
	EClass getKing();

	/**
	 * Returns the meta object for the '{@link BoardGameLanguage.King#move(BoardGameLanguage.Field) <em>Move</em>}' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the '<em>Move</em>' operation.
	 * @see BoardGameLanguage.King#move(BoardGameLanguage.Field)
	 * @generated
	 */
	EOperation getKing__Move__Field();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.Rook <em>Rook</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Rook</em>'.
	 * @see BoardGameLanguage.Rook
	 * @generated
	 */
	EClass getRook();

	/**
	 * Returns the meta object for the '{@link BoardGameLanguage.Rook#move(BoardGameLanguage.Field) <em>Move</em>}' operation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the '<em>Move</em>' operation.
	 * @see BoardGameLanguage.Rook#move(BoardGameLanguage.Field)
	 * @generated
	 */
	EOperation getRook__Move__Field();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.KingWhite <em>King White</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>King White</em>'.
	 * @see BoardGameLanguage.KingWhite
	 * @generated
	 */
	EClass getKingWhite();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.KingBlack <em>King Black</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>King Black</em>'.
	 * @see BoardGameLanguage.KingBlack
	 * @generated
	 */
	EClass getKingBlack();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.RookWhite <em>Rook White</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Rook White</em>'.
	 * @see BoardGameLanguage.RookWhite
	 * @generated
	 */
	EClass getRookWhite();

	/**
	 * Returns the meta object for class '{@link BoardGameLanguage.RookBlack <em>Rook Black</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Rook Black</em>'.
	 * @see BoardGameLanguage.RookBlack
	 * @generated
	 */
	EClass getRookBlack();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	BoardGameLanguageFactory getBoardGameLanguageFactory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each operation of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.BoardImpl <em>Board</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.BoardImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getBoard()
		 * @generated
		 */
		EClass BOARD = eINSTANCE.getBoard();

		/**
		 * The meta object literal for the '<em><b>Figures</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference BOARD__FIGURES = eINSTANCE.getBoard_Figures();

		/**
		 * The meta object literal for the '<em><b>Fields</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference BOARD__FIELDS = eINSTANCE.getBoard_Fields();

		/**
		 * The meta object literal for the '<em><b>Selected Figure</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference BOARD__SELECTED_FIGURE = eINSTANCE.getBoard_SelectedFigure();

		/**
		 * The meta object literal for the '<em><b>Width</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute BOARD__WIDTH = eINSTANCE.getBoard_Width();

		/**
		 * The meta object literal for the '<em><b>Height</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute BOARD__HEIGHT = eINSTANCE.getBoard_Height();

		/**
		 * The meta object literal for the '<em><b>Initialize</b></em>' operation.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EOperation BOARD___INITIALIZE__BOARDGAMEUTILS = eINSTANCE
				.getBoard__Initialize__BoardGameUtils();

		/**
		 * The meta object literal for the '<em><b>Handle Field Pressed</b></em>' operation.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EOperation BOARD___HANDLE_FIELD_PRESSED__FIELD = eINSTANCE
				.getBoard__HandleFieldPressed__Field();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.FigureImpl <em>Figure</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.FigureImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getFigure()
		 * @generated
		 */
		EClass FIGURE = eINSTANCE.getFigure();

		/**
		 * The meta object literal for the '<em><b>Field</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIGURE__FIELD = eINSTANCE.getFigure_Field();

		/**
		 * The meta object literal for the '<em><b>Board</b></em>' container reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIGURE__BOARD = eINSTANCE.getFigure_Board();

		/**
		 * The meta object literal for the '<em><b>Move</b></em>' operation.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EOperation FIGURE___MOVE__FIELD = eINSTANCE.getFigure__Move__Field();

		/**
		 * The meta object literal for the '<em><b>Perform Move</b></em>' operation.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EOperation FIGURE___PERFORM_MOVE__FIELD = eINSTANCE
				.getFigure__PerformMove__Field();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.FieldImpl <em>Field</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.FieldImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getField()
		 * @generated
		 */
		EClass FIELD = eINSTANCE.getField();

		/**
		 * The meta object literal for the '<em><b>Board</b></em>' container reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIELD__BOARD = eINSTANCE.getField_Board();

		/**
		 * The meta object literal for the '<em><b>Figure</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIELD__FIGURE = eINSTANCE.getField_Figure();

		/**
		 * The meta object literal for the '<em><b>Right</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIELD__RIGHT = eINSTANCE.getField_Right();

		/**
		 * The meta object literal for the '<em><b>Left</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIELD__LEFT = eINSTANCE.getField_Left();

		/**
		 * The meta object literal for the '<em><b>Above</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIELD__ABOVE = eINSTANCE.getField_Above();

		/**
		 * The meta object literal for the '<em><b>Below</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FIELD__BELOW = eINSTANCE.getField_Below();

		/**
		 * The meta object literal for the '<em><b>Row</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute FIELD__ROW = eINSTANCE.getField_Row();

		/**
		 * The meta object literal for the '<em><b>Column</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute FIELD__COLUMN = eINSTANCE.getField_Column();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.KingImpl <em>King</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.KingImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getKing()
		 * @generated
		 */
		EClass KING = eINSTANCE.getKing();

		/**
		 * The meta object literal for the '<em><b>Move</b></em>' operation.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EOperation KING___MOVE__FIELD = eINSTANCE.getKing__Move__Field();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.RookImpl <em>Rook</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.RookImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getRook()
		 * @generated
		 */
		EClass ROOK = eINSTANCE.getRook();

		/**
		 * The meta object literal for the '<em><b>Move</b></em>' operation.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EOperation ROOK___MOVE__FIELD = eINSTANCE.getRook__Move__Field();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.KingWhiteImpl <em>King White</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.KingWhiteImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getKingWhite()
		 * @generated
		 */
		EClass KING_WHITE = eINSTANCE.getKingWhite();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.KingBlackImpl <em>King Black</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.KingBlackImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getKingBlack()
		 * @generated
		 */
		EClass KING_BLACK = eINSTANCE.getKingBlack();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.RookWhiteImpl <em>Rook White</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.RookWhiteImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getRookWhite()
		 * @generated
		 */
		EClass ROOK_WHITE = eINSTANCE.getRookWhite();

		/**
		 * The meta object literal for the '{@link BoardGameLanguage.impl.RookBlackImpl <em>Rook Black</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see BoardGameLanguage.impl.RookBlackImpl
		 * @see BoardGameLanguage.impl.BoardGameLanguagePackageImpl#getRookBlack()
		 * @generated
		 */
		EClass ROOK_BLACK = eINSTANCE.getRookBlack();

	}

} //BoardGameLanguagePackage
